package dao

import "chat/global"

func Create[T any](data *T) bool {

	if err := global.DB.Create(data).Error; err != nil {
		return false
	}

	return true
}

func GetOneById[T any](id uint, data *T) bool {

	if err := global.DB.Where("id=?", id).Find(data).Limit(1).Error; err != nil {
		return false
	}
	return true
}

func GetOneByFields[T any](where *T, data *T) bool {

	if err := global.DB.Where(where).Find(data).Limit(1).Error; err != nil {
		return false
	}
	return true

}

func GetListByFields[T any](where *T, data *[]T) bool {

	if err := global.DB.Where(where).Find(data).Error; err != nil {
		return false
	}
	return true

}
func Find[T any](data *T) bool {
	if err := global.DB.Find(&data).Error; err != nil {
		return false
	}
	return true
}
func Find1[T any](message string, data *T) bool {
	if err := global.DB.Where("message = ?", message).Find(&data).Error; err != nil {
		return false
	}
	return true
}
